﻿using CLM.Gestao.Protheus.DAL;
using System.Collections.Generic;
using System.Linq;

namespace CLM.Gestao.Protheus.BLL
{
    public class SPDespesasGalderma : SPDespesasGaldermaBLO
    {
        #region Propriedades

        public string CodigoCentroCusto { get; set; }
        public string NomeCentroCusto { get; set; }
        public string CodigoContaContabil { get; set; }
        public string DescricaoContaContabil { get; set; }
        public string Data { get; set; }
        public double? Valor { get; set; }

        #endregion Propriedades

        public List<SPDespesasGalderma> ExecutaProcedure(int pMes, int pAno)
        {
            List<SPDespesasGalderma> proc = (from p in GetAll(pMes, pAno)
                                             select new SPDespesasGalderma
                                             {
                                                 CodigoCentroCusto = p.CCUSTO.Trim(),
                                                 CodigoContaContabil = p.CONTA.Trim(),
                                                 Data = p.DATA,
                                                 DescricaoContaContabil = p.DESCCONTA.Trim(),
                                                 NomeCentroCusto = p.DESCCUSTO.Trim(),
                                                 Valor = p.VALOR
                                             }).ToList();

            return proc;
        }
    }

    public class SPDespesasGaldermaBLO
    {
        /// <summary>
        /// SPDespesasGaldermaDAO
        /// </summary>
        private SPDespesasGaldermaDAO _base = new SPDespesasGaldermaDAO();

        /// <summary>
        /// Recupera uma entidade do sistema
        /// </summary>
        /// <returns>Lista</returns>
        public List<SP_GALD_BIRDS_DESPESAS_REALIZADAS_Result> GetAll(int pMes, int pAno)
        {
            return _base.GetAll(pMes, pAno);
        }
    }
}